Transmissions over wireless channels are subject to errors mainly due to the unreliable nature of the wireless medium. One way to overcome this unreliability is through the usage of link adaptation that provides a way of overcoming the fluctuations in the received signal. However, receiver noise and unpredictable variations in interference make it all the tougher that link adaptation will suffice to have a robust transmission. One other way to increase the robustness of the transmission is through the usage of Hybrid Automatic Repeat reQuest (HARQ) which is a combination of error correcting codes (mainly based on forward error correction (FEC)) and error detecting codes (such as Automatic Repeat reQuest (ARQ)). FEC schemes aim at making the transmission more reliable by adding redundant bits to the actual information bits to be transmitted. This added redundancy will result in a more robust transmission, but would inherently lead to a lower transmission rate (due to the addition of redundant bits). ARQ schemes consist of using an error-detecting code at the receiver, typically based on the usage of a cyclic redundancy check (CRC) to detect if there are errors in the received packet. In case errors were found, a negative acknowledgment (NACK) is sent to the transmitter so it would retransmit the erroneous packet. A more practical and powerful operation of HARQ is when it is used in conjunction with soft combining. This means that packets that were received erroneously are not discarded, but are rather combined with the consequently retransmitted data to obtain a more reliable combined packet. Based on the nature of the retransmitted bits, two variants of HARQ with soft combining exist: Chase combining (CC) and incremental redundancy (IR).
The main goal of HARQ schemes is to achieve a more reliable communication through the usage of a combination of error-correcting and error-detecting codes. The error correcting code tries to correct eventual errors in the received packet. In case not all errors can be corrected, the error detecting code is supposed to detect this and require the transmitter to retransmit the erroneous data. However, the retransmissions in any HARQ scheme, by definition, consist of the same set of information bits as the original transmission. This mainly means that extra bandwidth, time and power are used in order to convey information that was already transmitted (but incorrectly decoded). Consequently, the robustness achieved using HARQ schemes in any of its variants would come on the expense of: A reduction in the effective transmission rate, hence a decrease in spectral efficiency. The effective rate of the transmission is defined as the total number of information bits divided by the total number of coded bits (i.e. information bits and redundant bits) that were transmitted until a correct reception was possible. For instance, if k bits were coded into n bits (i.e. using a code with rate k/n), and a total of 2 transmissions were needed before the data was correctly decoded at the receiver (i.e. the initial transmission and one retransmission), the effective rate of that transmission is k/2n, resulting in a 50% decrease in the achievable spectral efficiency as compared to the case where the initial transmission was correctly decoded. Even though the HARQ process is supposed to be fast, the fact of data retransmission per se will lead to an increased delay. This delay is due to the time that the transmitter would need to reprocess the data to be retransmitted in addition to the actual retransmission time. This would lead to a delay in the transmission of the packets that were eventually scheduled after the retransmission.
Some methods for controlling retransmissions are known through the patent publications US 20080282125 and WO 2008108700, which both describes methods sending data to plural receivers. With reference to FIG. 1 showing a signalling chart, a retransmission process according to prior art will be disclosed. In a first step 1:1, initial data is sent from a sending system entity 100 to a receiving system entity 102. The receiving system entity 100 determines whether the initial data is affected by errors in a following step 1:2. Typically, the initial data is encoded with a code based on so called Cyclic Redundancy Check, enabling the receiving system entity to determine that the transmission is affected by errors. If the initial data was affected by errors, the receiving system entity requests the sending system entity 100 to retransmit the initial data, in a subsequent step 1:3 (indicated with a negative acknowledgement, so called NACK). If, on the other hand, the initial data received in step 1:1 was not affected with errors the process continues directly by executing the step 1:7.
In the following step 1:4, the sending system entity 100 determines to retransmit the initial data, and sends the initial data in another step 1.5. In the following step 1:6, the receiving system entity determines whether the resent data is affected by errors. The step 1:6 is similar to the step 1:2. If the receiving system entity 102 determines that the received data was unaffected by errors, it acknowledges the successful reception by in a following step 1:7, which also is the case when the initial data received in step 1:1 is unaffected by errors. In step 1:8, the sending system entity 100 then decides to proceed the transmission, and sends new data in the final step 1:9. The transmission proceeds then by sending data, to be acknowledged or requested to be retransmitted.
It therefore, exists a need for a flexible, fast, non-complex method for control of retransmissions in communication channels.